home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 1 / Cream of the Crop 1.iso / PROGRAM / CBASE102.ARJ / BLKIO.RME < prev    next >
Text File  |  1991-09-23  |  11KB  |  313 lines

  1. ----------------------------------------------------------------------
  2. | Citadel                                                            |
  3. | 241 East Eleventh Street * Brookville, IN 47012 * 317-647-4720     |
  4. |                                               BBS 317-647-2403     |
  5. ----------------------------------------------------------------------
  6.  
  7. blkio is distributed in a single compressed file blkioRL.zip; R and L
  8. would be the release and level numbers, respectively.  The ZIP data
  9. compression utilities are needed to extract the individual files.
  10.  
  11. The following files are obtained by decompressing blkioRL.zip:
  12.  
  13.    blkio.rme  preliminary information
  14.  license.txt  license
  15. rlsnotes.txt  release notes
  16.     ansi.h    ANSI compatibility header
  17. makefile      UNIX makefile
  18.  install.bat  DOS installation batch file
  19.    blkio.rsp  Response file for building Borland C library.
  20.        *.h    blkio header source files
  21.        *.c    blkio C source files
  22.  
  23.  
  24.  
  25.  
  26.  
  27.  
  28.  
  29.  
  30.  
  31.  
  32.  
  33.  
  34.  
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.                                                      Citadel  91/09/23
  53. ----------------------------------------------------------------------
  54. | blkio - block buffered i/o library                                 |
  55. | Version 1.1.3                                                      |
  56. ----------------------------------------------------------------------
  57.  
  58. ======================================================================
  59. COPYRIGHT
  60.  
  61. Copyright (c) 1989 Citadel
  62. All Rights Reserved
  63.  
  64. Citadel Software, Inc.
  65. 241 East Eleventh Street
  66. Brookville, IN 47012
  67. 317-647-4720
  68. BBS 317-647-2403
  69.  
  70. See the file license.txt for copyright information and disclaimer.
  71.  
  72. ======================================================================
  73. BLKIO
  74.  
  75. The blkio library is a buffered input/output library for C similar to
  76. the stdio library but designed for use with structured files.  The LRU
  77. (least recently used) replacement algorithm is used for buffering.
  78. The reference manual is embedded in the source code (see INSTALLATION
  79. INSTRUCTIONS, below).  For additional information on using the
  80. library, see the article "A Buffered I/O Library for Structured Files"
  81. in the October 1989 issue of "The C Users Journal."
  82.  
  83. The blkio library is a component of cbase, a complete multiuser C
  84. database file management library developed by Citadel.  A trial copy
  85. of cbase may be obtained on the Citadel BBS.
  86.  
  87. ======================================================================
  88. INSTALLATION INSTRUCTIONS
  89.  
  90. Before installing blkio, the manx utility should be compiled and
  91. placed in a directory in the path.  manx is used to extract the
  92. reference manual.  If manx was not received with blkio, it can be
  93. downloaded from the Citadel BBS.
  94.  
  95. Since C compilers are currently at various stages of ANSI compliance,
  96. the user must specify to blkio what ANSI features are supported by
  97. his compiler.  This is done by setting a set of ANSI compatibility
  98. macros that have been isolated in the file ansi.h.  For instance, the
  99. macro AC_PROTO should be defined if function prototypes are supported.
  100. As distributed, ansi.h is set up for a fully ANSI compliant compiler.
  101. After ansi.h is set up, it should be copied to the include directory.
  102. Isolating these definitions in a separate header outside of blkio
  103.  
  104.                                                      Citadel  91/09/23
  105. allows ansi.h to be readily available to applications and other
  106. libraries not using blkio.
  107.  
  108. To select the operating system, set the OPSYS macro in the private
  109. header file blkio_.h.  The modifications necessary to port blkio to a
  110. new operating system should not prove difficult, consisting mostly of
  111. direct translations of system calls such as open, close, and lseek.
  112. All operating system dependent code is located in the files buops.c
  113. and lockb.c.
  114.  
  115. To select the C compiler, set the CCOM macro in blkio_.h.  The
  116. modifications necessary to port to a new C compiler should be minimal
  117. (<ansi.h> will take care of most compiler differences), consisting
  118. only of translations of header file names and macro names such as
  119. those used by open and lseek.
  120.  
  121. If only single-user applications are to be developed, the SINGLE_USER
  122. macro in blkio_.h can be defined to disable the file locking system
  123. calls.  This is primarily intended to allow DOS applications to run
  124. without requiring share to be loaded.  Note that it is still necessary
  125. to use the cbase locking functions in order to set flags checked
  126. internally by cbase.
  127.  
  128. Because of the lack of uniformity among DOS C compilers, exact
  129. installation procedures for this system vary widely.  The supplied
  130. batch file install.bat is written for Borland Turbo C.  install.bat
  131. takes two arguments.  The first specifies the memory model, legal
  132. values for which are s, m, c, l, and h; the library file is named
  133. blkiom.lib, where m would correspond to the memory model of the
  134. library.  The second, if present, causes the reference manual to be
  135. extracted from the source code into the file blkio.man.  See the
  136. comments at the head of install.bat for notes on editing it for
  137. other C compilers and differences in your system configuration.
  138.  
  139.  
  140.  
  141.  
  142.  
  143.  
  144.  
  145.  
  146.  
  147.  
  148.  
  149.  
  150.  
  151.  
  152.  
  153.  
  154.  
  155.  
  156.                                                      Citadel  91/09/23
  157.                                  UNIX
  158.      1. Set the OPSYS macro in blkio_.h to OS_UNIX.
  159.      2. Set the CCOM macro in blkio_.h to the C compiler being used.
  160.      3. Include or exclude the SINGLE_USER macro in blkio_.h as
  161.         desired.
  162.      4. Install the boolean header file.
  163.              $ su
  164.              # cp bool.h /usr/include
  165.              # ^d
  166.      5. Extract the reference manual.
  167.              $ make man
  168.      6. Build the blkio library.
  169.              $ make blkio
  170.      7. Install the blkio library.  This will copy the blkio header
  171.         file blkio.h to /usr/include and the blkio library archive
  172.         to /usr/lib.
  173.              $ su
  174.              # make install
  175.              # ^d
  176.  
  177.  
  178.                                  DOS
  179.      1. Set the OPSYS macro in blkio_.h to OS_DOS.
  180.      2. Set the CCOM macro in blkio_.h to the C compiler being used.
  181.      3. Include or exclude the SINGLE_USER macro in blkio_.h as
  182.         desired.
  183.      4. If necessary, modify install.bat for the C compiler being
  184.         used.
  185.      5. Extract the reference manual, then build and install the blkio
  186.         library.
  187.              > install h x
  188.         Install may be rerun (without the x argument) for each desired
  189.         memory model.
  190.  
  191. ======================================================================
  192.  
  193.  
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  
  203.  
  204.  
  205.  
  206.  
  207.  
  208.                                                      Citadel  91/09/23
  209. ----------------------------------------------------------------------
  210. | cbase - The C Database Library                                     |
  211. | Version 1.0.2                                                      |
  212. ----------------------------------------------------------------------
  213.  
  214. cbase is a complete multiuser C database file management library,
  215. providing indexed and sequential access on multiple keys.  It features
  216. a layered architecture and comprises four individual libraries.
  217.  
  218.                  -----------------------------------
  219.                  |              ISAM*              |
  220.                  -----------------------------------
  221.                  |         File Structure          |
  222.                  -----------------------------------
  223.                  |          Buffered I/O           |
  224.                  -----------------------------------
  225.                  |           file system           |
  226.                  -----------------------------------
  227.                          cbase Architecture
  228.  
  229.                  -----------------------------------
  230.                  |              cbase              |
  231.                  -----------------------------------
  232.                  |     lseq       |      btree     |
  233.                  -----------------------------------
  234.                  |              blkio              |
  235.                  -----------------------------------
  236.                  |        operating system         |
  237.                  -----------------------------------
  238.                            cbase Libraries
  239.  
  240. The four libraries are:
  241.  
  242.      cbase - C database library for indexed and sequential access
  243.      lseq  - doubly linked sequential file management library
  244.      btree - B+-tree file management library
  245.      blkio - block buffered input/output library
  246.  
  247. cbase internally uses lseq for record storage and btree for inverted
  248. file index storage, which in turn use blkio for file access and
  249. buffering.  blkio is analagous to stdio but based on a file model more
  250. appropriate for structured files such as used in database software.
  251.  
  252. The lower level libraries can also be accessed directly for use
  253. independent of cbase.  For example, the btree library can be used to
  254. manipulate B+-trees for purposes other than inverted files, and the
  255. blkio library to develop new structured file management libraries.
  256.  
  257.  
  258. * ISAM stands for Indexed Sequential Access Method.
  259.  
  260.                                                      Citadel  91/09/23
  261.                             cbase Features
  262.                             --------------
  263. Portable:
  264.   - Written in strict adherence to ANSI C standard.
  265.   - K&R C compatibility maintained.
  266.   - All operating system dependent code is isolated to a small portion
  267.     of the blkio library to make porting to new systems easy.
  268.   - UNIX and DOS currently supported.
  269. Buffered:
  270.   - Both records and indexes are buffered using LRU (least recently
  271.     used) buffering.
  272. Fast and efficient random access:
  273.   - B+-trees are used for inverted file key storage.
  274.   - Multiple keys are supported.
  275.   - Both unique and duplicate keys are supported.
  276. Fast and efficient sequential access:
  277.   - B+-trees also allow keyed sequential access.
  278.   - Records are stored in doubly linked lists for non-keyed sequential
  279.     access.
  280.   - Both types of sequential access are bidirectional.
  281. Multiuser:
  282.   - Read-only locking.
  283. Other Features:
  284.   - Text file data import and export.
  285.   - Custom data types can be defined.
  286.   - Marker used to detect corrupt files.
  287.   - Reference documentation is in standard UNIX manual entry format,
  288.     including errno values.
  289. Utilities:
  290.   - cbddlp, a data definition language processor, is provided to
  291.     automatically generate the C code defining a database.
  292.  
  293.  
  294. $77 plus shipping                                      VISA/MasterCard
  295.  
  296. All source code included.
  297. No run-time fees or royalties.
  298.  
  299. Citadel Software, Inc.
  300. 241 East Eleventh Street
  301. Brookville, IN 47012
  302. 317-647-4720
  303. BBS 317-647-2403
  304.  
  305. An evaluation copy of cbase can be obtained at no charge on the
  306. Citadel BBS, or send $5 for diskette.
  307.  
  308.  
  309.  
  310.  
  311.  
  312.                                                      Citadel  91/09/23
  313.